﻿$(document).ready(function () {
    CreateTable('Aberto', 'em Aberto', false, 'A');
    CreateTable('Liberadas', 'Aptas a Receber',true, 'B');
    CreateTable('Confirmadas', 'Recebidas', false, 'C');
});

function CreateTable(table, caption, multiselect, status) {
    $("#t" + table).jqGrid({
        url: '/Comissoes/ComissoesList',
        datatype: 'json',
        mtype: 'GET',
        colNames: ['Id', 'Faturamento', 'Vencimento', 'Documento', 'Parcela', 'Saldo', 'Cliente', 'Tipo', 'Parcela', 'Pago', ''],
        colModel: [
            { name: 'ID_COMS', index: 'ID_COMS', width: 80, hidden: true },
            { name: 'DATAFAT_COMS', index: 'DATAFAT_COMS', width: 80, align: 'center', hidden: status == 'A' },
            { name: 'DATAVENC_COMS', index: 'DATAVENC_COMS', width: 80, align: 'center' },
            { name: 'DOCTO_COMS', index: 'DOCTO_COMS', width: 100, align: 'right' },
            { name: 'VALOR_COMS', index: 'VALOR_COMS', width: 100, align: 'right' },
            { name: 'SALDO_COMS', index: 'SALDO_COMS', width: 100, align: 'right' },
            { name: 'NOME_CLI', index: 'NOME_CLI', width: 300 },
            { name: 'TIPO_COMS', index: 'TIPO_COMS', width: 40, align: 'center' },
            { name: 'PARCELA_CMS', index: 'PARCELA_CMS', width: 60, align: 'right' },
            { name: 'VALPAG_COMS', index: 'VALPAG_COMS', width: 100, align: 'right', hidden: status == 'A' },
            { name: 'Confirmar', index: 'Confirmar', width: 26, align: 'center', hidden: !multiselect }
        ],
        gridComplete: function () { loadInputs(); },
        caption: 'Comissões ' + caption,
        pager: '#p' + table,
        width: 900,
        height: '100%',
        rowNum: 10,
        rowList: [10, 20, 30],
        sortname: 'DOCTO_COMS',
        sortorder: 'asc',
        viewrecords: true,
        multiselect: multiselect,
        onSelectAll: function (ids, status) {
            if (status) {
                $('#Comissoes').val(ids.join(','));
            }
            else {
                $('#Comissoes').val('');
            }
        },
        onSelectRow: function (id, status) {
            $('#Comissoes').val($("#t" + table).getGridParam('selarrrow').join(','));
        },
        ondblClickRow: function (id) {
            if (status == 'A' || status == 'B') {
                progressDialog(true);
                loadOption('/Comissoes/Digitacao/' + id, true)
            }
        },
        postData: {
            status: function () { return status }
        }
    }).navGrid('#p' + table, {
        edit: false, add: false, del: false, search: false, refresh: true
    })

    if (multiselect) {
        $("#t" + table).navButtonAdd('#p' + table, {
            caption: '',
            buttonicon: 'ui-icon-circle-check',
            onClickButton: function () {
                if ($('#Comissoes').val() == '') {
                    messageDialog('Atenção', 'Nenhuma comissão foi selecionada');
                }
                else {
                    Confirmar(null, $('#Comissoes').val());
                }
            },
            title: "confirmar recebimento das comissões selecionados",
            position: "last"
        });
    }
}

function New() {
    progressDialog(true);
    loadOption('/Operadores/Edit', true);
}

function Confirmar(ID_COMS, Comissoes) {
    progressDialog(true);
    $.post('/Comissoes/Confirmar/' + ID_COMS, { Comissoes: Comissoes }, function (data) {
        progressDialog(false);
        if (data.result == true) {
            $('#tLiberadas, #tConfirmadas').trigger('reloadGrid');
        }
        else {
            listErros(data.erros);
        }
    }, 'json');
}